import request from "@/utils/request";

// 查询定时任务调度列表
/**
 * 获取任务列表
 * @param {Object} query - 查询参数对象
 * @returns {Promise} - 返回一个Promise对象，包含任务列表数据
 */
export function listJob(query) {
  return request({
    url: "/sysJob/page",  // 请求的API接口路径
    method: "get",        // 请求方法为GET
    params: query,        // 将查询参数作为请求参数发送
  });
}

// 查询定时任务调度详细
export function getJob(jobId) {
  return request({
    url: "/sysJob/get/" + jobId,
    method: "get",
  });
}

// 新增定时任务调度
export function addJob(data) {
  return request({
    url: "/sysJob",
    method: "post",
    data: data,
  });
}

// 修改定时任务调度
export function updateJob(data) {
  return request({
    url: "/sysJob/"+data.jobId,
    method: "PATCH",
    data: data,
  });
}

// 删除定时任务调度
export function delJob(jobId) {
  return request({
    url: "/sysJob/job/" + jobId,
    method: "delete",
  });
}

// 任务状态修改
export function changeJobStatus(jobId, status) {
  const data = {
    jobId,
    status,
  };
  return request({
    url: "/sysJob/changeStatus",
    method: "PATCH",
    data: data,
  });
}

// 定时任务立即执行一次
export function runJob(jobId, jobGroup) {
  const data = {
    jobId,
    jobGroup,
  };
  return request({
    url: "/sysJob/run",
    method: "PATCH",
    data: data,
  });
}
